/**
 * @author phi
 */

var $id = function(id) { return document.getElementById(id); }
var $class = function(c, n) { n=n||0; return document.getElementsByClassName(c)[n]; }
var $classes = function(c)  { return document.getElementsByClassName(c); }

/**
 * 音データへのパス
 */
var SOUND_PATH = "../sound/";

/**
 * サポートされているファイル形式を取得
 */
var AUDIO_EXT = (function(){
    var audio = new Audio();
    var ext = "";
    if      (audio.canPlayType("audio/ogg") == 'maybe') { ext="ogg"; }
    else if (audio.canPlayType("audio/mp3") == 'maybe') { ext="mp3"; }
    else if (audio.canPlayType("audio/wav") == 'maybe') { ext="wav"; }
    
    return ext;
})();

window.onload = function()
{
    // キーボードエレメントを取得
    var keyboards = $classes("keyboard");
    // 全ての要素にクリック時のイベントを登録
    for (var i=0; i<keyboards.length; ++i) {
        // クリックイベントを登録
        keyboards[i].addEventListener("click", function(){
            // 音を鳴らす
            play(this);
        }, false);
    }
}

/*
 * 音を鳴らす
 */
function play(element)
{
    // 音を鳴らす
    var audio = new Audio(SOUND_PATH + element.getAttribute("name") + '.' + AUDIO_EXT);
    audio.play();
    // アニメーション
    element.style.webkitAnimationPlayState = "running";
}



